<?php

class Modelo_Model extends CI_Model {

    const STR_NOMBRE_TABLA = 'modelo';

    /**
     * Constructor
     * @author Fernando Esteban Valerio
     */
    function __construct() {
        parent::__construct();
    }
    
    /** Metodo que obtendra el modelo segun el nombre que esta en el documento excel
     * @author Leidy Uribe Marcos */
    function getModelos($data){
    	$this->db->where('id_estado', INT_ESTADO_ACTIVO);
    	$this->db->where('nombre', $data['modelo']);
    	$query  = $this->db->get(self::STR_NOMBRE_TABLA);
    	return $query->row_array();
    }

    /**
     * Obtener la información de una modelo determinado.
     * @author Fernando Esteban Valerio
     * @param int $idModelo Id Modelo
     */
    function getModelo($idModelo) {
        $this->db->where('id_modelo', $idModelo);
        $this->db->where('id_estado', INT_ESTADO_ACTIVO);
        $query = $this->db->get(self::STR_NOMBRE_TABLA);
        return $query->result();
    }

    /**
     * Obtener las modelos registradas en el sistema asociados a una marca.
     * @author Fernando Esteban Valerio
     * @param int $idMarca Id Marca
     * @return array
     */
    function getListModelo($idMarca) {
        if ($idMarca != '') {
            $this->db->where('id_marca', $idMarca);
        }
        $this->db->where('id_estado', INT_ESTADO_ACTIVO);
        $this->db->order_by('nombre', 'DESC');
        $query = $this->db->get(self::STR_NOMBRE_TABLA);
        return $query->result();
    }

    /**
     * Obtener la información de una modelo determinado.
     * @author Fernando Esteban Valerio
     * @param array $data Arreglo que contiene el identificador de una marca
     */
    function getPorMarca($data) {
        $p = $this->db->select('*');
        $p = $this->db->from('modelo');
        $p = $this->db->where('id_marca', $data['id']);
        $p = $this->db->get();
        return $p->result();
    }

    function getRowCount() {
        return $this->db->count_all(self::STR_NOMBRE_TABLA);
    }
    
    /**
     * Obtener la lista de modelos
     * @author Leidy Uribe Marcos
     */
    function getModel(){
    	$query = $this->db->query('SELECT modelo.id_modelo AS id_modelo, modelo.nombre AS nombre,
    			marca.nombre AS marca, tabla_maestra.nombre AS tipo_carroceria, 
    			modelo.id_estado AS id_estado
    			FROM modelo, marca, tabla_maestra
    			WHERE modelo.id_marca = marca.id_marca AND
    			modelo.id_tipo_carroceria = tabla_maestra.id_tabla_maestra');
    	return $query->result();
    }

}
